package br.siseventos.model;
// Generated 18/08/2012 11:34:56 by Hibernate Tools 3.2.1.GA


import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.UniqueConstraint;

/**
 * TbFuncionario generated by hbm2java
 */
@Entity
@Table(name="tb_funcionario"
    ,catalog="SisEventosDB"
    , uniqueConstraints = {@UniqueConstraint(columnNames="eml_funcionario"), @UniqueConstraint(columnNames="usr_funcionario")} 
)
public class TbFuncionario  implements java.io.Serializable {


     private Integer idtFuncionario;
     private TdPerfil tdPerfil;
     private String nmeFuncionario;
     private String usrFuncionario;
     private String pwdFuncionario;
     private String emlFuncionario;
     private String telFuncionario;
     private Set<TaAlocacaoServico> taAlocacaoServicos = new HashSet<TaAlocacaoServico>(0);
     private Set<TaAlocacaoLocal> taAlocacaoLocals = new HashSet<TaAlocacaoLocal>(0);
     private Set<TaAlocacaoRecurso> taAlocacaoRecursos = new HashSet<TaAlocacaoRecurso>(0);

    public TbFuncionario() {
    }

	
    public TbFuncionario(TdPerfil tdPerfil, String nmeFuncionario, String usrFuncionario, String pwdFuncionario, String emlFuncionario, String telFuncionario) {
        this.tdPerfil = tdPerfil;
        this.nmeFuncionario = nmeFuncionario;
        this.usrFuncionario = usrFuncionario;
        this.pwdFuncionario = pwdFuncionario;
        this.emlFuncionario = emlFuncionario;
        this.telFuncionario = telFuncionario;
    }
    public TbFuncionario(TdPerfil tdPerfil, String nmeFuncionario, String usrFuncionario, String pwdFuncionario, String emlFuncionario, String telFuncionario, Set<TaAlocacaoServico> taAlocacaoServicos, Set<TaAlocacaoLocal> taAlocacaoLocals, Set<TaAlocacaoRecurso> taAlocacaoRecursos) {
       this.tdPerfil = tdPerfil;
       this.nmeFuncionario = nmeFuncionario;
       this.usrFuncionario = usrFuncionario;
       this.pwdFuncionario = pwdFuncionario;
       this.emlFuncionario = emlFuncionario;
       this.telFuncionario = telFuncionario;
       this.taAlocacaoServicos = taAlocacaoServicos;
       this.taAlocacaoLocals = taAlocacaoLocals;
       this.taAlocacaoRecursos = taAlocacaoRecursos;
    }
   
     @Id @GeneratedValue(strategy=IDENTITY)
    
    @Column(name="idt_funcionario", unique=true, nullable=false)
    public Integer getIdtFuncionario() {
        return this.idtFuncionario;
    }
    
    public void setIdtFuncionario(Integer idtFuncionario) {
        this.idtFuncionario = idtFuncionario;
    }
@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="cod_perfil", nullable=false)
    public TdPerfil getTdPerfil() {
        return this.tdPerfil;
    }
    
    public void setTdPerfil(TdPerfil tdPerfil) {
        this.tdPerfil = tdPerfil;
    }
    
    @Column(name="nme_funcionario", nullable=false, length=80)
    public String getNmeFuncionario() {
        return this.nmeFuncionario;
    }
    
    public void setNmeFuncionario(String nmeFuncionario) {
        this.nmeFuncionario = nmeFuncionario;
    }
    
    @Column(name="usr_funcionario", unique=true, nullable=false, length=20)
    public String getUsrFuncionario() {
        return this.usrFuncionario;
    }
    
    public void setUsrFuncionario(String usrFuncionario) {
        this.usrFuncionario = usrFuncionario;
    }
    
    @Column(name="pwd_funcionario", nullable=false, length=128)
    public String getPwdFuncionario() {
        return this.pwdFuncionario;
    }
    
    public void setPwdFuncionario(String pwdFuncionario) {
        this.pwdFuncionario = pwdFuncionario;
    }
    
    @Column(name="eml_funcionario", unique=true, nullable=false, length=80)
    public String getEmlFuncionario() {
        return this.emlFuncionario;
    }
    
    public void setEmlFuncionario(String emlFuncionario) {
        this.emlFuncionario = emlFuncionario;
    }
    
    @Column(name="tel_funcionario", nullable=false, length=20)
    public String getTelFuncionario() {
        return this.telFuncionario;
    }
    
    public void setTelFuncionario(String telFuncionario) {
        this.telFuncionario = telFuncionario;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="tbFuncionario")
    public Set<TaAlocacaoServico> getTaAlocacaoServicos() {
        return this.taAlocacaoServicos;
    }
    
    public void setTaAlocacaoServicos(Set<TaAlocacaoServico> taAlocacaoServicos) {
        this.taAlocacaoServicos = taAlocacaoServicos;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="tbFuncionario")
    public Set<TaAlocacaoLocal> getTaAlocacaoLocals() {
        return this.taAlocacaoLocals;
    }
    
    public void setTaAlocacaoLocals(Set<TaAlocacaoLocal> taAlocacaoLocals) {
        this.taAlocacaoLocals = taAlocacaoLocals;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="tbFuncionario")
    public Set<TaAlocacaoRecurso> getTaAlocacaoRecursos() {
        return this.taAlocacaoRecursos;
    }
    
    public void setTaAlocacaoRecursos(Set<TaAlocacaoRecurso> taAlocacaoRecursos) {
        this.taAlocacaoRecursos = taAlocacaoRecursos;
    }




}


